home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / python2.4 / test / test_syntax.pyc (.txt) < prev    next >
Python Compiled Bytecode  |  2005-10-18  |  2KB  |  54 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.4)
  3.  
  4. import re
  5. import unittest
  6. import warnings
  7. from test import test_support
  8.  
  9. class SyntaxTestCase(unittest.TestCase):
  10.     
  11.     def _check_error(self, code, errtext, filename = '<testcase>', mode = 'exec'):
  12.         '''Check that compiling code raises SyntaxError with errtext.
  13.  
  14.         errtest is a regular expression that must be present in the
  15.         test of the exception raised.
  16.         '''
  17.         
  18.         try:
  19.             compile(code, filename, mode)
  20.         except SyntaxError:
  21.             err = None
  22.             mo = re.search(errtext, str(err))
  23.             if mo is None:
  24.                 self.fail("SyntaxError did not contain '%r'" % (errtext,))
  25.             
  26.         except:
  27.             mo is None
  28.  
  29.         self.fail('compile() did not raise SyntaxError')
  30.  
  31.     
  32.     def test_assign_call(self):
  33.         self._check_error('f() = 1', 'assign')
  34.  
  35.     
  36.     def test_assign_del(self):
  37.         self._check_error('del f()', 'delete')
  38.  
  39.     
  40.     def test_global_err_then_warn(self):
  41.         source = re.sub('(?m)^ *:', '', '            :def error(a):\n            :    global a  # SyntaxError\n            :def warning():\n            :    b = 1\n            :    global b  # SyntaxWarning\n            :')
  42.         warnings.filterwarnings(action = 'ignore', category = SyntaxWarning)
  43.         self._check_error(source, 'global')
  44.         warnings.filters.pop(0)
  45.  
  46.  
  47.  
  48. def test_main():
  49.     test_support.run_unittest(SyntaxTestCase)
  50.  
  51. if __name__ == '__main__':
  52.     test_main()
  53.  
  54.